Topographic feedforward system

ABSTRACT

A topography detection mechanism may measure surface height of a side read/write track while the read/write head is interacting with a current read/write track. A memory may store the measured surface height.

If an Application Data Sheet (ADS) has been filed on the filing date ofthis application, it is incorporated by reference herein. Anyapplications claimed on the ADS for priority under 35 U.S.C. §§119, 120,121, or 365(c), and any and all parent, grandparent, great-grandparent,etc. applications of such applications, are also incorporated byreference, including any priority claims made in those applications andany material incorporated by reference, to the extent such subjectmatter is not inconsistent herewith.

CROSS-REFERENCE TO RELATED APPLICATIONS

The present application is related to and/or claims the benefit of theearliest available effective filing date(s) from the following listedapplication(s) (the “Priority applications”), if any, listed below(e.g., claims earliest available priority dates for other thanprovisional patent applications or claims benefits under 35 USC §119(e)for provisional patent applications, for any and all parent,grandparent, great-grandparent, etc. applications of the Priorityapplication(s)). In addition, the present application is related to the“Related applications,” if any, listed below.

PRIORITY APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.13/735,960, filed Jan. 1, 2013, for “Topographic Feedforward System,”which is hereby incorporated by reference in its entirety.

If the listings of applications provided above are inconsistent with thelistings provided via an ADS, it is the intent of the Applicant to claimpriority to each application that appears in the Priority applicationssection of the ADS and to each application that appears in the Priorityapplications section of this application.

All subject matter of the Priority applications and the Relatedapplications and of any and all parent, grandparent, great-grandparent,etc. applications of the Priority applications and the Relatedapplications, including any priority claims, is incorporated herein byreference to the extent such subject matter is not inconsistentherewith.

TECHNICAL FIELD

This application relates to systems and methods for controllingread/write heads that interact with rotating information storagesurfaces.

SUMMARY

A read/write head may be configured to interact with tracks on arotating information storage surface. The rotating information storagesurface may be an optical disk, a magnetic disk platter, atomic forcemicroscopy data storage surfaces, and/or the like. If the read/writehead is too far from or too close to the rotating information storagesurface, the read/write head may not be able to read or writeinformation from or to the rotating information storage surface and/orthe read/write head may damage the rotating information storage surface.To achieve a desired gap between the read/write head and the rotatinginformation storage surface, a height control mechanism may adjust aheight of the read/write head based on the upcoming topography.

The topography may be computed from gap measurements using a dynamicfilter including a model of read/write head dynamics. Topographicfeatures on a side read/write track may be detected when the read/writehead is interacting with a current read/write track, and/or upcomingtopographic features on the current track may be detected. Detectedtopographic features can be stored in a memory and later retrieved whenthe read/write head is interacting with a read/write track correspondingto stored topographic features. The height control mechanism may adjustthe height of the read/write head based on the stored and/or computedtopographic features. The topographic features may include a sequenceand/or functional representation of topographic data. The height controlmechanism may be configured to make a plurality of adjustments based onthe sequence and/or functional representation of the topographic data.

Rotational and/or lateral movements of the read/write head and/or aslider may cause vertical motion due to cross coupling. In addition,rotational and/or translational movements may cause reaction forcesand/or torques to act on a suspension system and/or exterior components.A reactionless control system may be used to control rotational and/ortranslational movement of the read/write head and/or slider. Thereactionless control system may apply an opposing counterforce to offsetmovement of the read/write head and/or slider, such as by moving acounterbalance.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1A is a perspective view of a control system for a magnetic storagedevice.

FIG. 1B is a perspective view of a control system for an optical storagedevice.

FIG. 2 is a perspective view of a slider above an uneven disk platter.

FIG. 3 is a block diagram of a Kalman filter that may be used by acomputation unit to compute a topographic profile from measurement dataincluding gap measurements.

FIG. 4A is a perspective view of a disk platter with a plurality ofradially and azimuthally divided sections.

FIG. 4B is a graphical depiction of a functional representation of atopographic profile.

FIG. 5 is a perspective view of a control system for a magnetic storagedevice.

FIG. 6A is a perspective view of a reactionless control system for amagnetic storage device including a magnetic disk platter.

FIG. 6B is a perspective view of a reactionless control system for amagnetic storage device.

DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS

Storage devices, such as magnetic and optical disks, atomic forcemicroscopy (AFM) storage devices, and the like, may include a read/writehead configured to interact with a rotating information storage surfacestoring data. The read/write head may include a magnetic head, such as amagnetoresistive head, an optical pickup head, an AFM tip, and/or thelike. The rotating information storage surfaces may include magneticdisk platters, optical disks, AFM data storage surfaces, and/or thelike. As the density of storage devices increases, more precisepositioning of the read/write head is required to read the data from therotating information storage surfaces. Rotating information storagesurfaces may have irregular variations in the surface height, such asprotrusions, dips, and/or the like, that may interfere with reading andwriting by the read/write head.

Accordingly, a height control mechanism may adjust the height and/ororientation of a read/write head and/or a slider coupled to theread/write head to avoid head crashes and/or maintain a desired gapbetween the read/write head and the rotating information storagesurface. The height control mechanism may adjust the height of theread/write head by adjusting the height of the slider and/or byadjusting the height of the read/write head relative to the slider. Theread/write head may include a read head and a write head separate fromthe read head. The heights of the separate read and write heads may beadjusted independently in some embodiments and/or the height controlmechanism may adjust the heights of the read and write heads in anidentical manner.

To determine what adjustments should be made, the system may include oneor more sensors. The sensors may measure one or more system states, suchas a gap between the read/write head and the rotating informationstorage surface, a position of the read/write head, strains on a slidersuspension, and/or the like. The sensors may measure upcomingtopographic features on a current read/write track with which theread/write head is interacting, topographic features on a sideread/write track while the read/write head is interacting with thecurrent track, and/or the like. The sensors may include capacitivesensors, such as electrode capacitive sensors; optical sensors, such asmulti-lens optical sensors and interferometers; evanescent wave sensors;magnetic field sensors; and/or the like.

A computation unit may use a dynamic filter to compute a topographicprofile of the rotating information storage surface from the gapmeasurements. The dynamic filter may include a noise reduction filter,such as a Kalman filter. The dynamic filter may estimate a system stateusing a plurality of inputs including a dynamics model, known controlinputs, measurement data from the sensors, and the previous estimate ofthe system state. For example, the computation unit may use the dynamicfilter to estimate a topographic profile and/or a position of theread/write head from a model of read/write head dynamics, indications ofadjustments by the height control mechanism, the gap measurements, andthe stored estimates of the topographic profile, such as previouslycomputed estimates. The computation unit may compute the topographicprofile during operational interaction between the read/write head andthe rotating information storage surface. Such computation may includedetermining changes to the topographic profile during operation.

From the computed topographic profile, the computation unit maydetermine what adjustments by the height control mechanism are necessaryto create a desired gap between the slider and/or read/write head andthe rotating information storage surface. The adjustments may betransmitted to the height control mechanism, which may adjust the heightof the read/write head and/or slider to create the desired gap. Thecomputation unit may determine a desired separation distance based onmodeling by the dynamic filter, such as based on estimates of variancein the height of the topographic features by the dynamic filter. In anembodiment, the computation unit may determine what adjustments willmaintain a constant gap spacing between the slider and/or read/writehead and the rotating information storage surface. The dynamic filtermay include a model of read/write head responses to control adjustments,which the computation unit uses to compute a control adjustment thatwill achieve the desired gap. The model of read/write head responses mayinclude a model of a frequency response to control adjustments. Thedynamic filter may be configured to determine vertical motion of theslider, such as height, velocity, and/or oscillations of the slider.

The dynamic filter may also include one or more models of other systemcharacteristics. The dynamic filter may include a model of interactionsbetween the read/write head and the rotating information storagesurface, such as aerodynamic interactions, electrostatic interactions,magnetic interactions, Casimir interactions, evanescent interactions,Van der Waals interactions, and/or the like. The dynamic filter mayinclude a model of slider characteristics, such as mass, inertialmoment, geometry, aerodynamic characteristics, and/or the like. Thedynamic filter may include a model of characteristics of a suspensionsystem supporting the slider, such as force, stiffness, moments,inertia, and/or the like. The dynamic filter may include a model ofsensor characteristics. The dynamic filter may also include a model ofcoupled behavior between the slider suspension and the rotatinginformation storage surface, between slider aerodynamics and therotating information storage surface, and/or the like.

The computation unit may use the dynamic filter to determine systemcharacteristics. For example, the computation unit may determinecharacteristics of the slider, the suspension system, and/or the likeusing the dynamic filter. The computation unit may also determineenvironmental conditions using the dynamic filter. The computation unitmay use the determined system and/or environmental characteristics toupdate models of these characteristics in the dynamic filter. Thecomputation unit may use previous determinations of system and/orenvironmental characteristics when determining the updated system and/orenvironmental characteristics. The computation unit may determinechanges to the system and/or environmental characteristics duringoperational interaction between the read/write head and the rotatinginformation storage surface.

The computation unit may compute the topographic profile as a functionof position. For example, the topographic profile may be computed as afunction of radial position, as a function of azimuthal position, and/orthe like. The computation unit may compute global height variationsamong a plurality of sections of the rotating information storagesurface, such as radially and/or azimuthally divided sections. Thecomputation unit may compute an average, median, maximum, and/or minimumheight of each section and/or the like. Alternatively or in addition,the computation unit may compute a Fourier series representation of theglobal height variations among the plurality of sections. Thecomputation may compute local height variations as well or instead. Thelocal height variations may be computed over a predetermined range ofspatial sizes, spatial size scales, and/or wavenumbers. The local heightvariations may be computed over and/or in terms of a wavelength of areference frequency. The reference frequency may be the frequency atwhich an optical gap detection sensor operates.

A topography detection mechanism and/or a sensor may be configured todetect topographic figures of one or more side read/write tracks whilethe read/write head is interacting with the current track, such as bymeasuring a gap between the read/write head and the rotating informationstorage surface and calculating indications of the detected topographicfeatures from the measured gap. An indication of the height of theread/write head may be received from the height control mechanism, andthe indications of the topographic features may be computed from themeasured gap and the indication of the height of the read/write head.The height control mechanism may adjust the height of the read/writehead based on the indications of the detected topographic features.

A side track may be separated from the current track by a predeterminednumber of tracks, for example the side track may be adjacent to thecurrent track, one interposed track may separate the side track from thecurrent track, the side track may be N tracks away from the currenttracks, and/or the like. When detecting topographic features of aplurality of side tracks, the side tracks may be on opposite sides ofthe current track (e.g., a first side track may be on a first side ofthe current track and a second side track may be on a second side of thecurrent track).

The indications of the detected topographic features may be stored in amemory. The height control mechanism may adjust the height of theread/write head while the read/write head is interacting with thecurrent track based on previously stored indications of topographicfeatures of the current track. The computation unit may be configured toincorporate a stored topographic profile when computing the topographicprofile. For example, the computation unit may update a previouslycomputed topographic profile stored in the memory. The computation unitmay use the dynamic filter to incorporate the stored topographicprofile.

The memory may store processed and/or encoded indications of thetopographic features computed by a processing, encoding, and/orcomputation unit. The memory may store the indications of thetopographic features according to position, such as according to radialand/or azimuthal position. The memory may associate the indications oftopographic features with a radial and/or azimuthal position of thetopographic features. The memory may store the topographic features in amemory address corresponding to the radial and/or azimuthal position ofthe topographic features. The memory may store the radial and/orazimuthal position of the topographic features. The memory may include asemiconductor memory, a memory external to an enclosure encasing therotating information storage surface, the rotating information storagesurface, and/or the like.

The computation unit and/or the height control mechanism may beconfigured to match detected topographic features computed from gapmeasurements with stored topographic features to determine upcomingtopographic features. In an embodiment, the detected topographicfeatures of the current track may be matched with stored topographicfeatures of a previous track adjacent to the current track.Alternatively, the detected topographic features of a side trackadjacent to the current track may be matched with stored topographicfeatures of the current track. Previously stored indications of featuresof a track, such as the current track or a side track, may be matchedwith currently detected features of the same track. The computation unitand/or the topography detection mechanism may be configured to determinea radial and/or azimuthal position of the detected topographic features.The radial and/or azimuthal position may be used to retrieve storedtopographic features associated in the memory with that radial and/orazimuthal position.

An interpolation and/or extrapolation unit may be configured tointerpolate and/or extrapolate indications of topographic features ofthe current track from indications of topographic features of one ormore side tracks. Alternatively or in addition, the interpolation unitmay compute indications of topographic features of an intermediateread/write track from the indications of the topographic features of oneor more side tracks. The interpolation unit may be configured to receivethe indications of the topographic features of the one or more sidetracks from the memory. When interpolating the indications of thetopographic features of the intermediate track, the interpolation unitmay incorporate estimates of the topographic features of theintermediate track. For example, the interpolation unit may determinethe indications of the topographic features of the intermediate trackbased on previously obtained indications of the topographic features ofthe intermediate track and/or based on indications of detectedtopographic features. After the indications of the topographic featuresof the intermediate track have been determined by the interpolationunit, the memory may store the determined indications. The memory mayreplace previously stored indications of the topographic features withthe determined indications.

The read/write head may make multiple passes over the current read/writetrack in some embodiments. The sensor may detect gap measurements and/ortopographic features during a first pass, and the read/write head mayinteract with the current track during a second pass. The speed of theread/write head may be faster during the second pass, and/or the heightcontrol mechanism may adjust the height of the read/write head duringthe second pass. Gap measurements and/or topographic features may alsobe detected during the second pass. Alternatively or in addition, thetopography detection mechanism may detect topographic features of one ormore side tracks during a first pass. During a second pass, one of theside tracks may be the current track, and the topography detectionmechanism may detect topographic features of the current track. As aresult, topographic features for each track may be detected multiplestimes. In any embodiment with detection of topographic features and/orgap measurements during multiple passes, the sampling rate and/orvertical resolution may vary between the passes. For example, thesampling rate and/or vertical resolution of the first pass may begreater or less than the sampling rate and/or vertical resolution of thesecond pass.

A variety of indications may be used to represent topographic featuresand/or the topographic profile. The indications may comprise heightinformation, slope information, such as radial slope information and/orazimuthal slope information, high spatial frequency height deviationsrelative to a low frequency background height, and/or the like. Afunctional representation may be used to represent the topographicfeatures and/or topographic profile. The functional representation mayinclude a Fourier series, a spline fit, and/or the like. The functionalrepresentation may be computed from gap measurements and/or the heightof the read/write head.

The topographic profile and/or features may be represented by a sequenceof topographic data. The sequence of topographic data may correspond todifferent azimuthal locations. The sequence may correspond to uniformlyand/or non-uniformly spaced azimuthal locations. The height controlmechanism may be configured to make a plurality of height adjustments tothe height of the read/write head and/or the slider based on thesequence of topographic data. The sequence of data may includeindications of local protrusions and/or dips in the rotating informationstorage surface.

The sequence may include a functional representation of the topographicfeatures, such as a functional representation with respect to radialand/or azimuthal position, a Fourier series, a spline fit, and/or thelike. The sequence and/or functional representation of topographicfeatures may be computed from gap measurements, such as gap measurementsacquired during operation of the read/write head. The computation unitmay compute the sequence and/or functional representation by using thedynamic filter to model read/write head movements. The computation unitmay be configured to interpolate interstitial data points within thesequence of topographic data. The functional representation may be usedto compute the interstitial data points.

The sequence and/or functional representation may be computed during afirst operation of the read/write head, and the height of the read/writehead may be adjusted during a second operation. The read/write head mayinteract with a read/write track during the first and/or secondoperation. For example, the sequence and/or functional representationmay be computed from gap measurements made during a first pass, and theheight control mechanism may make a plurality of adjustments to theheight of the read/write head while it interacts with the read/writetrack during a second pass. The second pass may be at a greater speedthan the first pass.

The computation unit may be configured to compute a time or frequencyscale for the sequence and/or functional representation based on alinear speed of the read/write head relative to the rotating informationstorage surface. The computation unit and/or height control mechanismmay be configured to determine height adjustments to respond to periodicvariations in the sequence and/or functional representation.Alternatively or in addition, the computation unit and/or height controlmechanism may be configured to determine height adjustments based on atime response of actuation of the read/write head.

The memory may store the sequence and/or functional representation. Thememory may be configured to store a predetermined and/or factory-loadedsequence and/or functional representation. The stored sequence and/orfunctional representation may be matched to a detected sequence and/orfunctional representation to determine upcoming features. The stored anddetected sequences and/or functional representations may come from thesame track, adjacent tracks, tracks within a predetermined distance ofeach other, and/or the like. The stored sequences and/or functionalrepresentations may be associated in the memory with a radial and/orazimuthal position.

The computation unit may be configured to determine a plurality ofheight control mechanism actuations to achieve the plurality of heightadjustments by using the dynamic filter to model read/write headresponses to height control mechanism actuation. The computation unitmay also use the dynamic filter to model coupled behavior between therotating information storage surface and the slider, the slidersuspension, and/or the slider aerodynamics, and the computation unit maydetermine the plurality of height control mechanism actuations based onthe modeling of coupled behavior. The height control mechanism may beconfigured to maintain a desired separation distance based on thesequence and/or functional representation of topographic features andthe modeling by the dynamic filter. The height control mechanism mayalso or instead use the modeling by the dynamic filter to avoid surfacecollisions.

A reactionless control system may be used to prevent reaction forcesand/or torques from acting on the read/write head and undesirablyaltering its position. For example, the height control mechanism mayrespond to an upcoming dip in the rotating information storage surfaceby commanding the read/write head to move downward from the slider. Thismotion will normally impose a reaction force on the slider which mayinduce vertical oscillations in its height which can persist long afterthe dip has passed. To avoid this type of undesired effect, areactionless control system may be used, accompanying the downwardmotion of the read/write heat with a corresponding upward motion of asecond mass, thereby not imposing a reaction force on the slider, andnot initiating oscillations of it. In another embodiment, thereactionless control system may move a second mass to counteractcommanded motions of the slider. The reactionless control system may beconfigured to perform a first slider and/or read/write head movement andto apply a counterforce to offset the first movement. The reactionlesscontrol mechanism may be configured to offset rotational and/ortranslational movements including vertical and/or lateral movements. Thereactionless control system may apply the counterforce by moving asecond mass. The movement of the second mass may be rotational and/ortranslational, such as vertical or lateral movement, and may oppose thefirst movement. The second mass may weigh the same as the slider and/orthe read/write head. The reactionless control system may move aplurality of masses to offset a plurality of slider and/or read/writehead movements. For example, movement of the second mass may offset atranslational movement and movement of a third mass may offset arotational movement.

The reactionless control system may be configured to isolate the sliderand/or the read/write head. The reactionless control system may isolatethe slider from an exterior component coupled to the slider, such as asuspension system and/or suspension arm supporting the slider. Forexample, the reactionless control system may prevent a reaction force ortorque from acting on the exterior component and/or a connection to theexterior component. The reactionless control system may be configured tominimize a frequency response of the exterior component and/or theslider. The reactionless control system may isolate the slider frommovement of the read/write head, such as by minimizing a frequencyresponse of the read/write head. A time profile of the counterforce maymatch or differ from a time profile of the first movement. The firstmovement and counterforce may occur simultaneously. The counterforce maybegin before or after the first movement starts and end before or afterthe movement stops.

Vertical motion can be induced in the slider and/or read/write head fromlateral slewing of the slider and/or read/write head. The reactionlesscontrol system may be configured to apply a counterforce to counteractthe vertical motion, and/or the height control mechanism may beconfigured to adjust the height of the slider and/or read/write head tocontrol the vertical motion. The computation unit may be configured todetermine the counterforce and/or height adjustment necessary based on amodel of interactions between the lateral slewing and the verticalmotion. The dynamic filter can include the model of coupled lateral andvertical motion, and the computation unit may use the dynamic filter todetermine the counterforce and/or height adjustments.

FIG. 1A is a perspective view of a control system 100 a for a magneticstorage device 150 a. The control system 100 a may be configured tocontrol a read/write head 112 a that interacts with a magnetic diskplatter 155 a. The read/write head 112 a may be coupled to a slider 110a, and/or the slider 110 a may include the read/write head 112 a. Theslider 110 a may be configured to rest on a thin layer of fluid, such asair, and thereby suspend the read/write head 112 a over the magneticdisk platter 155 a. The slider 110 a may be coupled to a suspensionsystem 130 a. The suspension system 130 a may include an arm 132 a andan actuator 134 a to move the arm 132 a rotationally.

The arm 132 a may also include a height control mechanism 120 a. Theheight control mechanism 120 a may be configured to adjust a height ofthe slider 110 a and/or read/write head 112 a. The height controlmechanism 120 a may include a motor, such as a stepper motor, apiezoelectric actuator, and/or the like to actuate height adjustments.The illustrated height control mechanism 120 a is located on the arm 132a, but the height control mechanism 120 a may also be configured to movethe slider 110 a relative to the arm 132 a and/or the read/write head112 a relative to the slider 110 a.

FIG. 1B is a perspective view of a control system 100 b for an opticalstorage device 150 b. The control system 100 b may be configured tocontrol an optical pickup head 110 b including a laser 112 b and opticalsensor 114 b that interact with an optical disk 155 b. The opticalpickup head 110 b may be supported by a pair of rails 130 b that suspendthe optical pickup head 110 b above the optical disk 155 b. The opticalpickup head 110 b may move along the rails 130 b to position the laser112 b and optical sensor 114 b in a desired location relative to theoptical disk 155 b. In the illustrated embodiment, the optical pickuphead 110 b includes lead screws 120 b actuated by servos (not shown) toadjust a height of the optical pickup head 110 b relative to the rails130 b. In another embodiment, a height of the laser 112 b and opticalsensor 114 b may be adjusted relative to the optical pickup head 110 b.

FIG. 2 is a perspective view of a slider 210 above an uneven diskplatter 255. The disk platter 255 may include a sequence of dips 224 andprotrusions 226 in its surface. A plurality of adjustments may be madeto the height and/or orientation of the slider 210 to maintain aconstant gap between a read/write head 212 and the disk platter 255. Apath 222 that maintains the constant gap and/or a functionalrepresentation of the path 222 may be computed. Alternatively or inaddition, a plurality of actuations to achieve the constant gap may becomputed. A height control mechanism, such as height control mechanism120 a or lead screws 120 b, may be configured to adjust the height ofthe slider 210 and/or the read/write head 212 based on the computedactuations.

FIG. 3 is a block diagram of a Kalman filter 300 that may be used by acomputation unit (not shown) to compute a topographic profile 310 frommeasurement data 320 including gap measurements. The Kalman filter 300may be configured to assume that the measurement data 320 includesrandom noise and that the height of the read/write head 212 is affectedby random noise. The Kalman filter 300 may be further configured tofilter the measurement data 320 to minimize the effects of the noise onthe computed topographic profile 310. The Kalman filter 300 may storestate information 312 from which the topographic profile 310 isdetermined. The state information 312 may be iteratively updated basedon previous state information 314, control information 324, and themeasurement data 320.

For example, the Kalman filter 300 may begin with state information 312,such as the height and/or velocity of the read/write head 212, theheight and/or slope of topographic features, and/or the like. The stateinformation 312 may be an estimate of a true state and may berepresented by ŝ_(i), where i is a discrete time point. The stateinformation 312 may go through a delay 330 to produce previous stateinformation 314, which may be represented by ŝ_(i-1). Next, a prioristate information 316 may be computed according to the equationŝ_(i|i-1)=Aŝ_(i-1)+Nu_(i), where ŝ_(i|i-1) is the a priori stateinformation 316, A is a state gain/transition model 332, u_(i) is thecontrol information 324, and B is a control gain/input model 334.

A measurement estimate 326 that estimates the measurement from the apriori state information 316 may be computed according to the equation{circumflex over (x)}=Hŝ_(i|i-1), where {circumflex over (x)}_(i) is themeasurement estimate 326 and H is a measurement gain/observation model336. A residual 322 may be computed by subtracting the measurementestimate 326 from the actual measurement data 320 measured by one ormore sensors (not shown). The residual 322 may be multiplied by theKalman gain 340 and added to the a priori state information 316 toproduce updated state information 312 (i.e.,ŝ_(i)=ŝ_(i|i-1)+K_(i)(x_(i)−{circumflex over (x)}_(i)) where x_(i) isthe measurement data 320 and K_(i) is the Kalman gain 340). Thetopographic profile 310 may be computed from the state information 312using an output gain/topographic model 338. The topographic profile 310may be represented by y_(i), and the output gain/topographic model 338may be represented by C. The state information 312 may include thetopographic profile 310, and/or the topographic profile 310 may bederivable from the state information 312. In some embodiments, verticalmotion of the slider 210 and/or an actuation required to maintain adesired gap may also or instead be determined from the state information312.

In an embodiment, the Kalman filter may employ a simple three elementstate vector, one element being the height of the read/write head, thesecond being its vertical velocity, and the third being the height ofthe topographic profile. In this embodiment, the state transition gain Acan be described by a 3-by-3 matrix in which the head height changes dueto time progression of the head velocity, the head velocity changes dueto time progression of the suspension and aerodynamic accelerationsacting on the head; these may depend respectively on the head height andthe difference between the head and topographic surface heights. In thisembodiment, the measurement may be of the gap spacing, which can berelated to the state vector by a 1-by-3 matrix H where the first elementis 1, the second is 0, and the third is −1. In this embodiment, theKalman gain, K, may be a 3-by-1 vector, computed from knowledge of A, H,and state and measurement covariance matrices by standard Kalman filterrelations. In other embodiments, the dynamic filter can use additionalstate variables (e.g., representing azimuthal and radial slider motion,slider angular motion, relative motion between the read/write head andthe slider, motion of counterbalances, flexure of the suspension system,parameters representing uncertain aspects of the models, etc.) and moresophisticated system models. In some embodiments, the topographic heightcan be represented by a suite of separate variables corresponding toseparate locations on the surface, or to multiple parameters (e.g.,Fourier coefficients) in a functional representation of the height'spositional dependence. While the surface height generally may notactually vary in time, it may vary in location, which, because of theirrelative motion, can appear to the read/write head as a time variation.

The transition model 332, input model 334, topographic model 338, and/orobservation model 336 may include models of read/write head dynamics,read/write head responses to control adjustments, interactions betweenthe read/write head 212 and the disk platter 255, slidercharacteristics, suspension system characteristics, sensorcharacteristics, coupled behavior between the slider 210 and the diskplatter 255, coupled behavior between a slider suspension and the diskplatter 255, coupled behavior between slider aerodynamics and the diskplatter 255, and/or the like. The models 332, 334, 336, 338 may bepredetermined and/or factory loaded. The Kalman filter 300 may beconfigured to update the models 332, 334, 336, 338 based on itsperformance in estimating the state information 312.

In some embodiments, the dynamic filter may use a nonlinear Kalmanfilter; for instance in cases where the aerodynamic forces on the slidervary inversely with the gap spacing. The filter may use a discreteformulation, with state and measurements evaluated at discrete timevalues (or, correspondingly, at azimuthal angles related to time by therotational speed of the disk platter); state and measurements may beupdated at the same or at different intervals. The filter may use acontinuous time (or angle) formulation. In embodiments, the filter maytreat desired model parameters as state variables, such as where thefilter is being used to update or refine its knowledge of the models332, 334, 336, 338. It can incorporate a-priori estimates (e.g., fromthe manufacturer) of these parameters, as initial values, accompanied byappropriately sized covariance values, and/or by the process ofpseudo-measurements where the filter is presented with one or more“measurements” of the parameter having the a-priori value. Similartechniques can be used to incorporate previously determinedtopographical values (e.g., determined during previous passes, or bymanufacturer testing).

The dynamic filter can be used not just as a state estimator, but alsoas a dynamic controller, combining state estimation with optimizedcontrol to minimize a desired cost function. Examples of such controlalgorithms are described in State Functions and Linear Control Systems,by D G Schultz and J L Melsa, McGraw-Hill (1967) and in Optimum SystemsControl, by AP Sage, Prentice-Hall (1968). In one embodiment, the costfunction can be the squared deviation of the head-surface gap from adesired value, while the control variable can be an activation parameterof the slider's height control (e.g., applied by its suspension system).The cost function can include penalty functions, such as ones imposinglarge “costs” for gap spacings approaching zero. In some embodiments,the filter coefficients can be computed and updated in real time, suchas during each pass of the head over the surface. In other embodiments,the filter coefficients can be pre-computed (e.g., during previouspasses, supplied by the manufacturer, etc.).

FIG. 4A is a perspective view of a disk platter 400 a with a pluralityof radially and azimuthally divided sections 402 a . . . n, 404 a . . .n, 406 a . . . n. The sections 402 a . . . n, 404 a . . . n, 406 a . . .n may be disk sectors, disk tracks, and/or may be larger or smaller thandisk sectors and/or disk tracks. The Kalman filter 300 may determine thetopographic profile 310 as a function of position. Accordingly, a memory(not shown) may store topographic data on global height variations, suchas an average, median, maximum, and/or minimum height, for each section402 a . . . n, 404 a . . . n, 406 a . . . n. Alternatively or inaddition, the memory may store indications of local variations in eachsection 402 a . . . n, 404 a . . . n, 406 a . . . n.

FIG. 4B is a graphical depiction 400 b of a functional representation420 of a topographic profile. The functional representation 420 may be aFourier series, a spline fit, and/or the like. The functionalrepresentation 420 may be defined for a plurality of azimuthally and/orradially divided sections 408 a . . . n. For a spline fit, thefunctional representation 420 may have a knot 410 a . . . n between eachsection 408 a . . . n. Alternatively, there may be more or fewer knots410 a . . . n than sections 408 a . . . n. For a Fourier series, thememory (not shown) may store a plurality of Fourier coefficients. Thenumber of Fourier coefficients stored may be the same as the number ofsections 408 a . . . n. The memory may store more or fewer coefficientsthan the number of sections 408 a . . . n, such as a multiple of thenumber of sections 408 a . . . n (e.g., twice or half as many Fouriercoefficients as sections 408 a . . . n).

FIG. 5 is a perspective view of a control system 500 for a magneticstorage device 550. The control system 500 may be configured to controla slider 510 including a read/write head 512 that interacts with acurrent read/write track 556 on a magnetic disk platter 555. The slider510 may also include a gap sensor 514 configured to measure a gapbetween the gap sensor 514 and/or the read/write head 512 and a sideread/write track 557. The control system 500 may include a memory 540attached to the arm 532. The memory 540 may store the gap measurementsof the side track 557 and/or indications of topographic featurescomputed from the gap measurements. The gap measurement and/or theindications of the topographic features may be encoded and/or processedbefore storage. Indications of the radial and/or azimuthal position ofthe topographic features may also be stored and/or the gap measurementsand/or topographic features may be stored in a memory addresscorresponding to the radial and/or azimuthal position.

When the read/write head 512 is repositioned to interact with the sideread/write track 557, the topographic features and/or gap measurementsfor the side read/write track 557 may be retrieved from the memory 540.A height control mechanism 520 may be configured to adjust the height ofthe slider 510 based on the retrieved topographic features and/or gapmeasurements. A computation unit (not shown) may use pattern-recognitionand/or phase-processing algorithms to recognize recapitulation oftopographic features. For example, the computation unit may beconfigured to recognize detected topographic features of the sideread/write 557 from stored indications of topographic features of thecurrent read/write track 556 and thereby to determine upcoming featureson the current and/or side read/write track 556, 557. The topographicfeatures may be associated in the memory 540 with a radial and/orazimuthal position. Accordingly, detected topographic features at acertain position may be compared with stored indications of topographicfeatures having a same or similar position.

FIG. 6A is a perspective view of a reactionless control system 600 a fora magnetic storage device 650 a including a magnetic disk platter 655 a.The reactionless control system 600 a may include a suspension system630 a with an actuator 634 a configured to rotate an arm 632 a. Theactuator 634 a may be further configured to rotate a counterbalance 640a in a direction opposing the rotation of the arm 632 a. For example,the actuator 634 a may rotate the arm 632 a clockwise and at the sametime rotate the counterbalance 640 a counterclockwise. Thecounterbalance 640 a may weigh the same as the arm 632 a, a slider 610a, and/or a read/write head 612 a. Thus, the counterbalance 640 a mayisolate the suspension system 630 a from torque and/or reaction forcesresulting from movement of the read/write head 612 a. Further, suchisolation may prevent rotational movements from creating vertical motionin the read/write head 612 a and/or slider 610 a.

FIG. 6B is a perspective view of a reactionless control system 600 b fora magnetic storage device 650 b. The reactionless control system 600 bmay include a slider 610 b coupled to a read/write head 612 b configuredto interact with a magnetic disk platter 655 b. A height controlmechanism 620 b may be configured to adjust a height of the read/writehead 612 b and/or the slider 610 b. The height control mechanism 620 bmay be further configured to adjust a height of a counterbalance 640 b.The height control mechanism 620 b may move the counterbalance 640 b ina direction opposing motion of the slider 610 b and/or read/write head612 b. For example, the height control mechanism 620 b may move thecounterbalance 640 b up while moving the slider 610 b and/or read/writehead 612 b down. The reactionless control system 600 b may preventmotion of the slider 610 b and/or read/write head 612 b from applying aforce and/or a torque on a suspension system 630 b and/or creatingundesired oscillations. In some embodiments, the counterbalance may belocated on the slider and may be used to counteract motions of theread/write head relative to the slider.

It will be understood by those having skill in the art that many changesmay be made to the details of the above-described embodiments withoutdeparting from the underlying principles of the disclosure. The scope ofthe present disclosure should, therefore, be determined only by thefollowing claims.

1. A system for controlling a read/write head that interacts withread/write tracks on a rotating information storage surface, the systemcomprising: a topography detection mechanism configured to measuresurface height of a side read/write track when the read/write head isinteracting with a current read/write track; and a memory configured tostore indications of the measured surface height.
 2. The system of claim1, wherein the topography detection mechanism is further configured tomeasure upcoming surface height on the current read/write track whilethe read/write head is interacting with the current read/write track. 3.The system of claim 2, wherein the topography detection mechanismmeasures the surface height of the side read/write track at a firstsampling rate and the upcoming surface height of the current read/writetrack at a second sampling rate.
 4. The system of claim 3, wherein thefirst sampling rate is less than the second sampling rate.
 5. The systemof claim 3, wherein the first sampling rate is greater than the secondsampling rate.
 6. The system of claim 2, wherein the topographydetection mechanism measures the surface height of the side read/writetrack at a first vertical resolution and the upcoming topographicfeatures of the current read/write track at a second verticalresolution.
 7. The system of claim 6, wherein the first verticalresolution is less than the second vertical resolution.
 8. The system ofclaim 6, wherein the first vertical resolution is greater than thesecond vertical resolution.
 9. The system of claim 1, wherein the memoryis configured to store the indications of the measured surface height ina memory address corresponding to a radial position of the measuredsurface height.
 10. The system of claim 1, wherein the memory isconfigured to store the indications of the measured surface height in amemory address corresponding to an azimuthal position of the measuredsurface height.
 11. The system of claim 1, wherein the memory is furtherconfigured to store an indication of a radial position of the measuredsurface height.
 12. The system of claim 1, wherein the memory is furtherconfigured to store an indication of an azimuthal position of themeasured surface height.
 13. The system of claim 1, wherein theindications of the measured surface height comprise slope information.14. The system of claim 13, wherein the slope information comprisesazimuthal slope information.
 15. The system of claim 13, wherein theslope information comprises radial slope information.
 16. The system ofclaim 1, wherein the memory comprises a semiconductor memory.
 17. Thesystem of claim 1, wherein the memory is located external to anenclosure encasing the rotating information storage surface.
 18. Thesystem of claim 1, wherein the rotating information storage surfacecomprises the memory.
 19. A non-transitory computer-readable storagemedium comprising program code for performing a method for controlling aread/write head that interacts with read/write tracks on a rotatinginformation storage surface, the method comprising: measuring surfaceheight of a side read/write track when the read/write head isinteracting with a current read/write track; and storing indications ofthe detected measured surface height in a memory.
 20. The non-transitorycomputer-readable storage medium of claim 19, wherein measuring surfaceheight comprises measuring surface height of a side read/write trackseparated from the current read/write track by a predetermined number ofread/write tracks.
 21. The non-transitory computer-readable storagemedium of claim 20, wherein measuring surface height comprises measuringsurface height of a side read/write track adjacent to the currentread/write track.
 22. The non-transitory computer-readable storagemedium of claim 20, wherein measuring surface height comprises measuringsurface height of a side read/write track separated from the currentread/write track by one interposed read/write track.
 23. Thenon-transitory computer-readable storage medium of claim 19, whereinstoring indications comprises storing the indications of the measuredsurface height according to position.
 24. The non-transitorycomputer-readable storage medium of claim 23, wherein storingindications comprises storing the indications of the measured surfaceheight according to radial position.
 25. The non-transitorycomputer-readable storage medium of claim 23, wherein storingindications comprises storing the indications of the measured surfaceheight according to azimuthal position.
 26. The non-transitorycomputer-readable storage medium of claim 19, wherein the method furthercomprises determining indications of surface height of an intermediateread/write track by interpolating indications of surface height of oneor more side tracks.
 27. The non-transitory computer-readable storagemedium of claim 26, wherein determining indications comprises receivingthe measured surface height of the one or more side tracks from thememory.
 28. The non-transitory computer-readable storage medium of claim26, wherein determining indications comprises determining theindications of surface height of the intermediate read/write track basedon indications of measured surface height of the intermediate read/writetrack.
 29. The non-transitory computer-readable storage medium of claim26, wherein the method further comprises storing the determinedindications of the measured surface height of the intermediateread/write track.
 30. The non-transitory computer-readable storagemedium of claim 26, wherein storing the determined indications comprisesreplacing previously stored indications of the measured surface heightof the intermediate read/write track with the determined indications.